package com.weitu.contractor.entity;

import com.weitu.plugin.PageView;

import java.util.ArrayList;
import java.util.List;

/**
 * @author LiMeng
 * date 2017/04/19 17:55
 */
public class ContractorAuditHistoryCriteria {
    // 排序字段
    protected String orderByClause;

    // 过滤重复数据
    protected boolean distinct;

    // 查询条件
    protected List<Criteria> oredCriteria;

    protected PageView pageView;

    /** 
     * 构造查询条件
     */
    public ContractorAuditHistoryCriteria() {
        oredCriteria = new ArrayList<Criteria>();
    }

    /** 
     * 设置排序字段
     * @param orderByClause 排序字段
     */
    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    /** 
     * 获取排序字段
     */
    public String getOrderByClause() {
        return orderByClause;
    }

    /** 
     * 设置过滤重复数据
     * @param distinct 是否过滤重复数据
     */
    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    /** 
     * 是否过滤重复数据
     */
    public boolean isDistinct() {
        return distinct;
    }

    /** 
     * 获取当前的查询条件实例
     */
    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    /** 
     * 增加或者的查询条件,用于构建或者查询
     * @param criteria 过滤条件实例
     */
    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    /** 
     * 创建一个新的或者查询条件
     */
    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    /** 
     * 创建一个查询条件
     */
    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    /** 
     * 内部构建查询条件对象
     */
    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    /** 
     * 清除查询条件
     */
    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    /** 
     *
     * @param pageView
     */
    public void setPageView(PageView pageView) {
        this.pageView=pageView;
    }

    /** 
     *
     */
    public PageView getPageView() {
        return pageView;
    }

    /**
     * 承包商管理_承包商资质审查历史表HSE_CM_CONTRACTORAUDITHISTORY的基本动态SQL对象.
     */
    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition != null) {
                criteria.add(new Criterion(condition));
            }
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value != null) {
                criteria.add(new Criterion(condition, value));
            }
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 != null && value2 != null) {
                criteria.add(new Criterion(condition, value1, value2));
            }
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(String value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(String value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(String value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(String value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(String value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(String value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLike(String value) {
            addCriterion("id like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotLike(String value) {
            addCriterion("id not like", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<String> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<String> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(String value1, String value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(String value1, String value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andCodeIsNull() {
            addCriterion("code is null");
            return (Criteria) this;
        }

        public Criteria andCodeIsNotNull() {
            addCriterion("code is not null");
            return (Criteria) this;
        }

        public Criteria andCodeEqualTo(String value) {
            addCriterion("code =", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotEqualTo(String value) {
            addCriterion("code <>", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThan(String value) {
            addCriterion("code >", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeGreaterThanOrEqualTo(String value) {
            addCriterion("code >=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThan(String value) {
            addCriterion("code <", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLessThanOrEqualTo(String value) {
            addCriterion("code <=", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeLike(String value) {
            addCriterion("code like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotLike(String value) {
            addCriterion("code not like", value, "code");
            return (Criteria) this;
        }

        public Criteria andCodeIn(List<String> values) {
            addCriterion("code in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotIn(List<String> values) {
            addCriterion("code not in", values, "code");
            return (Criteria) this;
        }

        public Criteria andCodeBetween(String value1, String value2) {
            addCriterion("code between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andCodeNotBetween(String value1, String value2) {
            addCriterion("code not between", value1, value2, "code");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNull() {
            addCriterion("remarks is null");
            return (Criteria) this;
        }

        public Criteria andRemarksIsNotNull() {
            addCriterion("remarks is not null");
            return (Criteria) this;
        }

        public Criteria andRemarksEqualTo(String value) {
            addCriterion("remarks =", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotEqualTo(String value) {
            addCriterion("remarks <>", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThan(String value) {
            addCriterion("remarks >", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksGreaterThanOrEqualTo(String value) {
            addCriterion("remarks >=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThan(String value) {
            addCriterion("remarks <", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLessThanOrEqualTo(String value) {
            addCriterion("remarks <=", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksLike(String value) {
            addCriterion("remarks like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotLike(String value) {
            addCriterion("remarks not like", value, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksIn(List<String> values) {
            addCriterion("remarks in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotIn(List<String> values) {
            addCriterion("remarks not in", values, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksBetween(String value1, String value2) {
            addCriterion("remarks between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andRemarksNotBetween(String value1, String value2) {
            addCriterion("remarks not between", value1, value2, "remarks");
            return (Criteria) this;
        }

        public Criteria andDelStateIsNull() {
            addCriterion("delState is null");
            return (Criteria) this;
        }

        public Criteria andDelStateIsNotNull() {
            addCriterion("delState is not null");
            return (Criteria) this;
        }

        public Criteria andDelStateEqualTo(Integer value) {
            addCriterion("delState =", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateNotEqualTo(Integer value) {
            addCriterion("delState <>", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateGreaterThan(Integer value) {
            addCriterion("delState >", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("delState >=", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateLessThan(Integer value) {
            addCriterion("delState <", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateLessThanOrEqualTo(Integer value) {
            addCriterion("delState <=", value, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateIn(List<Integer> values) {
            addCriterion("delState in", values, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateNotIn(List<Integer> values) {
            addCriterion("delState not in", values, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateBetween(Integer value1, Integer value2) {
            addCriterion("delState between", value1, value2, "delState");
            return (Criteria) this;
        }

        public Criteria andDelStateNotBetween(Integer value1, Integer value2) {
            addCriterion("delState not between", value1, value2, "delState");
            return (Criteria) this;
        }

        public Criteria andAddUserIdIsNull() {
            addCriterion("addUserId is null");
            return (Criteria) this;
        }

        public Criteria andAddUserIdIsNotNull() {
            addCriterion("addUserId is not null");
            return (Criteria) this;
        }

        public Criteria andAddUserIdEqualTo(String value) {
            addCriterion("addUserId =", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdNotEqualTo(String value) {
            addCriterion("addUserId <>", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdGreaterThan(String value) {
            addCriterion("addUserId >", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("addUserId >=", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdLessThan(String value) {
            addCriterion("addUserId <", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdLessThanOrEqualTo(String value) {
            addCriterion("addUserId <=", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdLike(String value) {
            addCriterion("addUserId like", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdNotLike(String value) {
            addCriterion("addUserId not like", value, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdIn(List<String> values) {
            addCriterion("addUserId in", values, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdNotIn(List<String> values) {
            addCriterion("addUserId not in", values, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdBetween(String value1, String value2) {
            addCriterion("addUserId between", value1, value2, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddUserIdNotBetween(String value1, String value2) {
            addCriterion("addUserId not between", value1, value2, "addUserId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdIsNull() {
            addCriterion("addDeptId is null");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdIsNotNull() {
            addCriterion("addDeptId is not null");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdEqualTo(String value) {
            addCriterion("addDeptId =", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdNotEqualTo(String value) {
            addCriterion("addDeptId <>", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdGreaterThan(String value) {
            addCriterion("addDeptId >", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdGreaterThanOrEqualTo(String value) {
            addCriterion("addDeptId >=", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdLessThan(String value) {
            addCriterion("addDeptId <", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdLessThanOrEqualTo(String value) {
            addCriterion("addDeptId <=", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdLike(String value) {
            addCriterion("addDeptId like", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdNotLike(String value) {
            addCriterion("addDeptId not like", value, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdIn(List<String> values) {
            addCriterion("addDeptId in", values, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdNotIn(List<String> values) {
            addCriterion("addDeptId not in", values, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdBetween(String value1, String value2) {
            addCriterion("addDeptId between", value1, value2, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddDeptIdNotBetween(String value1, String value2) {
            addCriterion("addDeptId not between", value1, value2, "addDeptId");
            return (Criteria) this;
        }

        public Criteria andAddTimeIsNull() {
            addCriterion("addTime is null");
            return (Criteria) this;
        }

        public Criteria andAddTimeIsNotNull() {
            addCriterion("addTime is not null");
            return (Criteria) this;
        }

        public Criteria andAddTimeEqualTo(String value) {
            addCriterion("addTime =", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotEqualTo(String value) {
            addCriterion("addTime <>", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThan(String value) {
            addCriterion("addTime >", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeGreaterThanOrEqualTo(String value) {
            addCriterion("addTime >=", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThan(String value) {
            addCriterion("addTime <", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeLessThanOrEqualTo(String value) {
            addCriterion("addTime <=", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeLike(String value) {
            addCriterion("addTime like", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotLike(String value) {
            addCriterion("addTime not like", value, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeIn(List<String> values) {
            addCriterion("addTime in", values, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotIn(List<String> values) {
            addCriterion("addTime not in", values, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeBetween(String value1, String value2) {
            addCriterion("addTime between", value1, value2, "addTime");
            return (Criteria) this;
        }

        public Criteria andAddTimeNotBetween(String value1, String value2) {
            addCriterion("addTime not between", value1, value2, "addTime");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdIsNull() {
            addCriterion("updateDeptId is null");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdIsNotNull() {
            addCriterion("updateDeptId is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdEqualTo(String value) {
            addCriterion("updateDeptId =", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdNotEqualTo(String value) {
            addCriterion("updateDeptId <>", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdGreaterThan(String value) {
            addCriterion("updateDeptId >", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdGreaterThanOrEqualTo(String value) {
            addCriterion("updateDeptId >=", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdLessThan(String value) {
            addCriterion("updateDeptId <", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdLessThanOrEqualTo(String value) {
            addCriterion("updateDeptId <=", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdLike(String value) {
            addCriterion("updateDeptId like", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdNotLike(String value) {
            addCriterion("updateDeptId not like", value, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdIn(List<String> values) {
            addCriterion("updateDeptId in", values, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdNotIn(List<String> values) {
            addCriterion("updateDeptId not in", values, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdBetween(String value1, String value2) {
            addCriterion("updateDeptId between", value1, value2, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateDeptIdNotBetween(String value1, String value2) {
            addCriterion("updateDeptId not between", value1, value2, "updateDeptId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNull() {
            addCriterion("updateUserId is null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIsNotNull() {
            addCriterion("updateUserId is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdEqualTo(String value) {
            addCriterion("updateUserId =", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotEqualTo(String value) {
            addCriterion("updateUserId <>", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThan(String value) {
            addCriterion("updateUserId >", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdGreaterThanOrEqualTo(String value) {
            addCriterion("updateUserId >=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThan(String value) {
            addCriterion("updateUserId <", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLessThanOrEqualTo(String value) {
            addCriterion("updateUserId <=", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdLike(String value) {
            addCriterion("updateUserId like", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotLike(String value) {
            addCriterion("updateUserId not like", value, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdIn(List<String> values) {
            addCriterion("updateUserId in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotIn(List<String> values) {
            addCriterion("updateUserId not in", values, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdBetween(String value1, String value2) {
            addCriterion("updateUserId between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateUserIdNotBetween(String value1, String value2) {
            addCriterion("updateUserId not between", value1, value2, "updateUserId");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNull() {
            addCriterion("updateTime is null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIsNotNull() {
            addCriterion("updateTime is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeEqualTo(String value) {
            addCriterion("updateTime =", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotEqualTo(String value) {
            addCriterion("updateTime <>", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThan(String value) {
            addCriterion("updateTime >", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeGreaterThanOrEqualTo(String value) {
            addCriterion("updateTime >=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThan(String value) {
            addCriterion("updateTime <", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLessThanOrEqualTo(String value) {
            addCriterion("updateTime <=", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeLike(String value) {
            addCriterion("updateTime like", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotLike(String value) {
            addCriterion("updateTime not like", value, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeIn(List<String> values) {
            addCriterion("updateTime in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotIn(List<String> values) {
            addCriterion("updateTime not in", values, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeBetween(String value1, String value2) {
            addCriterion("updateTime between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andUpdateTimeNotBetween(String value1, String value2) {
            addCriterion("updateTime not between", value1, value2, "updateTime");
            return (Criteria) this;
        }

        public Criteria andContractorIdIsNull() {
            addCriterion("contractorId is null");
            return (Criteria) this;
        }

        public Criteria andContractorIdIsNotNull() {
            addCriterion("contractorId is not null");
            return (Criteria) this;
        }

        public Criteria andContractorIdEqualTo(String value) {
            addCriterion("contractorId =", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdNotEqualTo(String value) {
            addCriterion("contractorId <>", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdGreaterThan(String value) {
            addCriterion("contractorId >", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdGreaterThanOrEqualTo(String value) {
            addCriterion("contractorId >=", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdLessThan(String value) {
            addCriterion("contractorId <", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdLessThanOrEqualTo(String value) {
            addCriterion("contractorId <=", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdLike(String value) {
            addCriterion("contractorId like", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdNotLike(String value) {
            addCriterion("contractorId not like", value, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdIn(List<String> values) {
            addCriterion("contractorId in", values, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdNotIn(List<String> values) {
            addCriterion("contractorId not in", values, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdBetween(String value1, String value2) {
            addCriterion("contractorId between", value1, value2, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorIdNotBetween(String value1, String value2) {
            addCriterion("contractorId not between", value1, value2, "contractorId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdIsNull() {
            addCriterion("contractorTypeId is null");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdIsNotNull() {
            addCriterion("contractorTypeId is not null");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdEqualTo(String value) {
            addCriterion("contractorTypeId =", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdNotEqualTo(String value) {
            addCriterion("contractorTypeId <>", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdGreaterThan(String value) {
            addCriterion("contractorTypeId >", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdGreaterThanOrEqualTo(String value) {
            addCriterion("contractorTypeId >=", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdLessThan(String value) {
            addCriterion("contractorTypeId <", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdLessThanOrEqualTo(String value) {
            addCriterion("contractorTypeId <=", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdLike(String value) {
            addCriterion("contractorTypeId like", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdNotLike(String value) {
            addCriterion("contractorTypeId not like", value, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdIn(List<String> values) {
            addCriterion("contractorTypeId in", values, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdNotIn(List<String> values) {
            addCriterion("contractorTypeId not in", values, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdBetween(String value1, String value2) {
            addCriterion("contractorTypeId between", value1, value2, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andContractorTypeIdNotBetween(String value1, String value2) {
            addCriterion("contractorTypeId not between", value1, value2, "contractorTypeId");
            return (Criteria) this;
        }

        public Criteria andYearIsNull() {
            addCriterion("year is null");
            return (Criteria) this;
        }

        public Criteria andYearIsNotNull() {
            addCriterion("year is not null");
            return (Criteria) this;
        }

        public Criteria andYearEqualTo(Integer value) {
            addCriterion("year =", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearNotEqualTo(Integer value) {
            addCriterion("year <>", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearGreaterThan(Integer value) {
            addCriterion("year >", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearGreaterThanOrEqualTo(Integer value) {
            addCriterion("year >=", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearLessThan(Integer value) {
            addCriterion("year <", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearLessThanOrEqualTo(Integer value) {
            addCriterion("year <=", value, "year");
            return (Criteria) this;
        }

        public Criteria andYearIn(List<Integer> values) {
            addCriterion("year in", values, "year");
            return (Criteria) this;
        }

        public Criteria andYearNotIn(List<Integer> values) {
            addCriterion("year not in", values, "year");
            return (Criteria) this;
        }

        public Criteria andYearBetween(Integer value1, Integer value2) {
            addCriterion("year between", value1, value2, "year");
            return (Criteria) this;
        }

        public Criteria andYearNotBetween(Integer value1, Integer value2) {
            addCriterion("year not between", value1, value2, "year");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateIsNull() {
            addCriterion("contractorIntellStartDate is null");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateIsNotNull() {
            addCriterion("contractorIntellStartDate is not null");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateEqualTo(String value) {
            addCriterion("contractorIntellStartDate =", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateNotEqualTo(String value) {
            addCriterion("contractorIntellStartDate <>", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateGreaterThan(String value) {
            addCriterion("contractorIntellStartDate >", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateGreaterThanOrEqualTo(String value) {
            addCriterion("contractorIntellStartDate >=", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateLessThan(String value) {
            addCriterion("contractorIntellStartDate <", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateLessThanOrEqualTo(String value) {
            addCriterion("contractorIntellStartDate <=", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateLike(String value) {
            addCriterion("contractorIntellStartDate like", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateNotLike(String value) {
            addCriterion("contractorIntellStartDate not like", value, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateIn(List<String> values) {
            addCriterion("contractorIntellStartDate in", values, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateNotIn(List<String> values) {
            addCriterion("contractorIntellStartDate not in", values, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateBetween(String value1, String value2) {
            addCriterion("contractorIntellStartDate between", value1, value2, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellStartDateNotBetween(String value1, String value2) {
            addCriterion("contractorIntellStartDate not between", value1, value2, "contractorIntellStartDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateIsNull() {
            addCriterion("contractorIntellEndDate is null");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateIsNotNull() {
            addCriterion("contractorIntellEndDate is not null");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateEqualTo(String value) {
            addCriterion("contractorIntellEndDate =", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateNotEqualTo(String value) {
            addCriterion("contractorIntellEndDate <>", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateGreaterThan(String value) {
            addCriterion("contractorIntellEndDate >", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateGreaterThanOrEqualTo(String value) {
            addCriterion("contractorIntellEndDate >=", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateLessThan(String value) {
            addCriterion("contractorIntellEndDate <", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateLessThanOrEqualTo(String value) {
            addCriterion("contractorIntellEndDate <=", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateLike(String value) {
            addCriterion("contractorIntellEndDate like", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateNotLike(String value) {
            addCriterion("contractorIntellEndDate not like", value, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateIn(List<String> values) {
            addCriterion("contractorIntellEndDate in", values, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateNotIn(List<String> values) {
            addCriterion("contractorIntellEndDate not in", values, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateBetween(String value1, String value2) {
            addCriterion("contractorIntellEndDate between", value1, value2, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andContractorIntellEndDateNotBetween(String value1, String value2) {
            addCriterion("contractorIntellEndDate not between", value1, value2, "contractorIntellEndDate");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdIsNull() {
            addCriterion("responsibleId is null");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdIsNotNull() {
            addCriterion("responsibleId is not null");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdEqualTo(String value) {
            addCriterion("responsibleId =", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdNotEqualTo(String value) {
            addCriterion("responsibleId <>", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdGreaterThan(String value) {
            addCriterion("responsibleId >", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdGreaterThanOrEqualTo(String value) {
            addCriterion("responsibleId >=", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdLessThan(String value) {
            addCriterion("responsibleId <", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdLessThanOrEqualTo(String value) {
            addCriterion("responsibleId <=", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdLike(String value) {
            addCriterion("responsibleId like", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdNotLike(String value) {
            addCriterion("responsibleId not like", value, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdIn(List<String> values) {
            addCriterion("responsibleId in", values, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdNotIn(List<String> values) {
            addCriterion("responsibleId not in", values, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdBetween(String value1, String value2) {
            addCriterion("responsibleId between", value1, value2, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andResponsibleIdNotBetween(String value1, String value2) {
            addCriterion("responsibleId not between", value1, value2, "responsibleId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdIsNull() {
            addCriterion("supervisorId is null");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdIsNotNull() {
            addCriterion("supervisorId is not null");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdEqualTo(String value) {
            addCriterion("supervisorId =", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdNotEqualTo(String value) {
            addCriterion("supervisorId <>", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdGreaterThan(String value) {
            addCriterion("supervisorId >", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdGreaterThanOrEqualTo(String value) {
            addCriterion("supervisorId >=", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdLessThan(String value) {
            addCriterion("supervisorId <", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdLessThanOrEqualTo(String value) {
            addCriterion("supervisorId <=", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdLike(String value) {
            addCriterion("supervisorId like", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdNotLike(String value) {
            addCriterion("supervisorId not like", value, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdIn(List<String> values) {
            addCriterion("supervisorId in", values, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdNotIn(List<String> values) {
            addCriterion("supervisorId not in", values, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdBetween(String value1, String value2) {
            addCriterion("supervisorId between", value1, value2, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSupervisorIdNotBetween(String value1, String value2) {
            addCriterion("supervisorId not between", value1, value2, "supervisorId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdIsNull() {
            addCriterion("safeDutierId is null");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdIsNotNull() {
            addCriterion("safeDutierId is not null");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdEqualTo(String value) {
            addCriterion("safeDutierId =", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdNotEqualTo(String value) {
            addCriterion("safeDutierId <>", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdGreaterThan(String value) {
            addCriterion("safeDutierId >", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdGreaterThanOrEqualTo(String value) {
            addCriterion("safeDutierId >=", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdLessThan(String value) {
            addCriterion("safeDutierId <", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdLessThanOrEqualTo(String value) {
            addCriterion("safeDutierId <=", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdLike(String value) {
            addCriterion("safeDutierId like", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdNotLike(String value) {
            addCriterion("safeDutierId not like", value, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdIn(List<String> values) {
            addCriterion("safeDutierId in", values, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdNotIn(List<String> values) {
            addCriterion("safeDutierId not in", values, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdBetween(String value1, String value2) {
            addCriterion("safeDutierId between", value1, value2, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andSafeDutierIdNotBetween(String value1, String value2) {
            addCriterion("safeDutierId not between", value1, value2, "safeDutierId");
            return (Criteria) this;
        }

        public Criteria andIsEpcIsNull() {
            addCriterion("isEpc is null");
            return (Criteria) this;
        }

        public Criteria andIsEpcIsNotNull() {
            addCriterion("isEpc is not null");
            return (Criteria) this;
        }

        public Criteria andIsEpcEqualTo(Integer value) {
            addCriterion("isEpc =", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcNotEqualTo(Integer value) {
            addCriterion("isEpc <>", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcGreaterThan(Integer value) {
            addCriterion("isEpc >", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcGreaterThanOrEqualTo(Integer value) {
            addCriterion("isEpc >=", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcLessThan(Integer value) {
            addCriterion("isEpc <", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcLessThanOrEqualTo(Integer value) {
            addCriterion("isEpc <=", value, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcIn(List<Integer> values) {
            addCriterion("isEpc in", values, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcNotIn(List<Integer> values) {
            addCriterion("isEpc not in", values, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcBetween(Integer value1, Integer value2) {
            addCriterion("isEpc between", value1, value2, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsEpcNotBetween(Integer value1, Integer value2) {
            addCriterion("isEpc not between", value1, value2, "isEpc");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemIsNull() {
            addCriterion("isHseSystem is null");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemIsNotNull() {
            addCriterion("isHseSystem is not null");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemEqualTo(Integer value) {
            addCriterion("isHseSystem =", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemNotEqualTo(Integer value) {
            addCriterion("isHseSystem <>", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemGreaterThan(Integer value) {
            addCriterion("isHseSystem >", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemGreaterThanOrEqualTo(Integer value) {
            addCriterion("isHseSystem >=", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemLessThan(Integer value) {
            addCriterion("isHseSystem <", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemLessThanOrEqualTo(Integer value) {
            addCriterion("isHseSystem <=", value, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemIn(List<Integer> values) {
            addCriterion("isHseSystem in", values, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemNotIn(List<Integer> values) {
            addCriterion("isHseSystem not in", values, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemBetween(Integer value1, Integer value2) {
            addCriterion("isHseSystem between", value1, value2, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andIsHseSystemNotBetween(Integer value1, Integer value2) {
            addCriterion("isHseSystem not between", value1, value2, "isHseSystem");
            return (Criteria) this;
        }

        public Criteria andAuditStateIsNull() {
            addCriterion("auditState is null");
            return (Criteria) this;
        }

        public Criteria andAuditStateIsNotNull() {
            addCriterion("auditState is not null");
            return (Criteria) this;
        }

        public Criteria andAuditStateEqualTo(Integer value) {
            addCriterion("auditState =", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateNotEqualTo(Integer value) {
            addCriterion("auditState <>", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateGreaterThan(Integer value) {
            addCriterion("auditState >", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateGreaterThanOrEqualTo(Integer value) {
            addCriterion("auditState >=", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateLessThan(Integer value) {
            addCriterion("auditState <", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateLessThanOrEqualTo(Integer value) {
            addCriterion("auditState <=", value, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateIn(List<Integer> values) {
            addCriterion("auditState in", values, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateNotIn(List<Integer> values) {
            addCriterion("auditState not in", values, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateBetween(Integer value1, Integer value2) {
            addCriterion("auditState between", value1, value2, "auditState");
            return (Criteria) this;
        }

        public Criteria andAuditStateNotBetween(Integer value1, Integer value2) {
            addCriterion("auditState not between", value1, value2, "auditState");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedIsNull() {
            addCriterion("isQualified is null");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedIsNotNull() {
            addCriterion("isQualified is not null");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedEqualTo(Integer value) {
            addCriterion("isQualified =", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedNotEqualTo(Integer value) {
            addCriterion("isQualified <>", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedGreaterThan(Integer value) {
            addCriterion("isQualified >", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedGreaterThanOrEqualTo(Integer value) {
            addCriterion("isQualified >=", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedLessThan(Integer value) {
            addCriterion("isQualified <", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedLessThanOrEqualTo(Integer value) {
            addCriterion("isQualified <=", value, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedIn(List<Integer> values) {
            addCriterion("isQualified in", values, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedNotIn(List<Integer> values) {
            addCriterion("isQualified not in", values, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedBetween(Integer value1, Integer value2) {
            addCriterion("isQualified between", value1, value2, "isQualified");
            return (Criteria) this;
        }

        public Criteria andIsQualifiedNotBetween(Integer value1, Integer value2) {
            addCriterion("isQualified not between", value1, value2, "isQualified");
            return (Criteria) this;
        }
    }

    /**
     * 承包商管理_承包商资质审查历史表HSE_CM_CONTRACTORAUDITHISTORY的映射实体
     */
    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    /**
     * 承包商管理_承包商资质审查历史表HSE_CM_CONTRACTORAUDITHISTORY的动态SQL对象.
     */
    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}